home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-04 / avts12.zip / AVTS.DOC < prev    next >
Text File  |  1993-02-17  |  40KB  |  1,266 lines

  1.         
  2.         
  3.         
  4.         
  5.         
  6.         
  7.         
  8.         
  9.         
  10.         
  11.         ARIS VERSION TRACKING SYSTEM
  12.  
  13.             Version 1.2
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.         Alexander Riedel Informations-Systeme
  32.         Am Schmiedberg 16a
  33.         D-8019 Glonn
  34.         Germany 
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48. Document release date: February 16, 1993
  49. Printed in Germany
  50. Document AVTS.DOC
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63. Information  in this document is subject to change without notice and 
  64. does  not  represent  a  commitment on the part of ARIS. The software 
  65. described  in this document is furnished under a licence agreement or 
  66. nondisclosure  agreement.  The software may be used or copied only in 
  67. accordance with the terms  of the agreement. It is against the law to
  68. copy the software on any medium except as specifically allowed in the 
  69. license  or  nondisclosure  agreement.  No part of this manual may be
  70. reproduced or transmitted in any form or  by any means, electronic or 
  71. mechanical,  including  photocopying  and  recording, for any purpose
  72. without the express written permission of ARIS.
  73.  
  74.             (c) 1992 Alexander Riedel Informations-Systeme
  75.                              All rights reserved
  76.  
  77.  
  78.  
  79. I. Introduction                                   4
  80. 1. What is a Version Tracking System?                   4
  81. 2. Installing ARIS Version Tracking System               5
  82.  
  83. II. Tutorial                               6
  84. 1.  Creating and editing a project                   6
  85. 2.  Configuration management                      8
  86. 3.  Module history and editing activity                  9
  87.  
  88. III. Reference                             11
  89. 1.   CDC - Change Delta Comment                     11
  90. 2.   CREATE - Creates projects and apply files to them.         12
  91. 3.   DELTA - Creates a new version (delta) of a file 
  92.      in an AVTS project.                     13
  93. 4.   DIFF - Compares two files and creates a 
  94.      difference listing                         14
  95. 5.   GET - Copies a project file and locks it              14
  96. 6.   HISTORY - Prints the revision history of a file 
  97.      in an AVTS project                         16
  98. 7.   LOGVIEW - View the contents of a project's log file     17
  99. 8.   READ - Copies a project file without locking           17
  100. 9.   RMALIAS - Removes an alias name from a 
  101.      specific version of a module                 19
  102. 10.  RMAVTS - Removes a file from an AVTS project         20
  103. 11.  SACT - Reports current editing activity in an 
  104.      AVTS project                         20
  105. 12.  SETALIAS - Sets the alias name for one or more 
  106.      modules                             22
  107. 13.  UNDIFF - Applies a diff script to a file.             23
  108. 14.  UNGET - Reverses a GET command without 
  109.      creating a new version                     23
  110. 15.  WHAT - Extracts identifying strings from program files    24
  111.  
  112. IV. APPENDIX A - ERROR MESSAGES                    25
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119. I.    Introduction
  120.  
  121. 1.    What is a Version Tracking System?
  122.  
  123. A  Version  Tracking System is a valuable tool for managing  software
  124. projects in network environments.  It prevents conflicts between team
  125. members that could otherwise work on the  same module and keeps track
  126. of  all  changes  that  have been applied to a module of the software 
  127. project. 
  128.  
  129. It  also  helps you maintain your current configuration by preventing 
  130. you  from  accidentally linking wrong modules and therefore increases 
  131. the quality of your software if you are a single programmer or if you
  132. work in a team without network.
  133.  
  134. This  is done by controlling access to the source files in such a way 
  135. that  only one user at a time has control over the current version of 
  136. a  module.  All  other  users  are  still able to read the current or 
  137. earlier  versions  of  a  module  for  reference or for building test 
  138. applications.
  139. Another  advantage  of  a  Version  Tracking System is the ability to 
  140. trace  back  the development path. You may retrieve information about 
  141. who  applied  what  change and when and you may even retrieve earlier 
  142. versions of your modules. This gives you the security and quality you
  143. deserve. No need to guess which files belong to a specific version of
  144. your  software  just  ask for them, even if it is a long time ago and 
  145. even  if you are two, three or more version after the one you want to 
  146. have rebuilt.
  147.  
  148.  
  149. The ARIS Version Tracking System (AVTS) manages all files that belong
  150. to  a certain project by storing these files in an internal form in a 
  151. subdirectory. This sub directory is created under the directory where
  152. the executable files for AVTS are stored.
  153. You may create a project by explicit use of the command CREATE but it
  154. is  automatically  created  if  you  apply  the first file  to a non-
  155. existent  project  (You  will see a deeper discussion of the commands 
  156. and their usage later).
  157. You  will have to define all files that are involved with the project 
  158. to  AVTS. For you as a user there is no difference whether you handle 
  159. source  modules  (ASCII  text)  or  binary files (executables, object 
  160. files,  spreadsheets or text processor documents). Once you have done 
  161. that you will always follow the development cycle outlined below:
  162.  
  163. - Get a file from the AVTS
  164. - Work on it
  165. - Give it back to keep a record of the changes.
  166.  
  167. That's it!
  168.  
  169. While  you  work on a specific module no other user is allowed to get
  170. it  for work. They may, however, get a copy of it for reference. Per-
  171. haps  you will also need some more modules from the project to create 
  172. a  test version of your application. Then the development cycle looks 
  173. like that:
  174.  
  175. - Get the file to work on from AVTS
  176. - Read all other files you need from AVTS
  177. - Work on your module
  178. - Give the modified module back
  179.  
  180. That is enough theory for the moment. You will see some examples that
  181. show how to work with AVTS later.
  182.  
  183. 2.    Installing ARIS Version Tracking System
  184.  
  185. The  installation  of the ARIS Version Tracking System (AVTS) is very
  186. easy. Simply type the following command at your DOS prompt:
  187.  
  188. A:SETUP
  189.  
  190. and  press  the  ENTER  key.  If you have the product disk in a drive
  191. other than A:, replace the A with the letter of the drive to be used.
  192. You  will be prompted for a directory where SETUP should install AVTS 
  193. after  some screens providing additional information. The default in-
  194. stallation  drive  and directory is C:\AVTS. You may, however, change 
  195. this  to  your  needs.  After supplying the path specification, SETUP 
  196. copies all necessary files to the installation drive and directory. 
  197.  
  198. After  this  process  is completed you are prompted, whether you want 
  199. SETUP  to edit the PATH statement in your AUTOEXEC.BAT to include the
  200. installation path in your search path. You may omit this step:
  201.  
  202. - if you have already chosen a directory in the search path
  203. - or if you want to make these changes on your own.
  204.  
  205. Note  that AVTS needs the installation directory included in the PATH
  206. variable to work properly.
  207.  
  208. Once you are back to the DOS prompt, you might have to reboot your PC
  209. to  activate  the changes to your AUTOEXEC.BAT. To do this, hold down 
  210. the keys Ctrl-Alt-Del and your system will reboot.
  211.  
  212. Below you see a list of the files you should find in the installation
  213. directory with a brief description of what they are for.
  214.  
  215. CDC.EXE        Changes the comment of a delta.
  216. CREATE.EXE    Creates projects and apply files to them.
  217. DELTA.EXE    Creates a new version (delta) of a file in an AVTS 
  218.         project.
  219. DIFF.EXE    Creates a listing of the differences between to 
  220.         versions of a file.
  221. GET.EXE        Copies a project file and locks it.
  222. HISTORY.EXE    Prints the revision history of a file in an AVTS 
  223.         project.
  224. LOGVIEW.EXE    Online viewer for a project's log file.
  225. READ.EXE    Copies a project file without locking it.
  226. RMALIAS.EXE    Removes an alias name from a specific version of a 
  227.         module.
  228. RMAVTS.EXE    Removes a file from an AVTS project.
  229. SACT.EXE    Reports current editing activity in an AVTS project.
  230. SETALIAS.EXE    Sets the alias name for one or more modules.
  231. UNDIFF.EXE    Creates a new file by applying a diff listing to an 
  232.         existing file.
  233. UNGET.EXE    Reverses a GET command and discards the changes.
  234. WHAT.EXE    Displays identifying information about files.
  235.  
  236. Since  AVTS  creates an audit trail  of all changes applied to a pro-
  237. ject,  it  needs  to  know your name. For that purpose you may either 
  238. specify your user name with an option for every command or, more con-
  239. veniently,  set the environment variable USERNAME to your login name. 
  240. If  you  are not working in a network we suggest to set this variable 
  241. to your last name or whatever suits you.
  242.  
  243.  
  244. II.    Tutorial
  245.  
  246. 1.    Creating and editing a project
  247.  
  248. For all of our following examples we will assume that our project has
  249. four source code modules written in the C language (MYAPP.C, MYMENU.C,
  250. MYFILE.C  and  MYPRINT.C), two header files (MYAPP.H and MYFILE.H), a 
  251. makefile (MYAPP.MAK) and the documentation file (MYAPP.DOC).
  252.  
  253. We will now assume, that we have written a first version of all these
  254. files and will now start to introduce these files to an AVTS project.
  255. This will be done by the following command sequence:
  256.  
  257. set USERNAME=MYNAME
  258. create -pmyapp MYAPP.C 
  259. create -pmyapp MYMENU.C 
  260. create -pmyapp MYFILE.C 
  261. create -pmyapp MYPRINT.C 
  262. create -pmyapp MYAPP.H
  263. create -pmyapp MYFILE.H 
  264. create -pmyapp MYAPP.MAK
  265. create -t1 -pmyapp MYAPP.DOC 
  266.  
  267. The  last  command  has a parameter that  makes it different from the
  268. previous command: -t1
  269. This  tells  AVTS  that  this  file  has to be treated as binary file 
  270. rather than as ASCII file. AVTS will not create differential listings
  271. on versions applied to this file. Each version of this file is stored
  272. as is.
  273.  
  274. You  might  now  want to have a look at the log file which is updated 
  275. each time you make a change in a project.
  276.  
  277. Assuming  that  you  installed  the  AVTS  in  the  default directory 
  278. (C:\AVTS) you will find the log file under this name: 
  279.  
  280. C:\AVTS\MYAPP.RCS\RCS.LOG
  281.  
  282. This log file is a plain ASCII text file and readable by every editor.
  283. You  do  not need to remember such long paths. Simply use the utility 
  284. LOGVIEW for viewing a project's log file.
  285.  
  286. For the above example the log file will now look like this:
  287.  
  288. Sun Dec 13 21:56:35 1992 User MYNAME creates MYAPP.C, version 1.0
  289. Sun Dec 13 21:56:36 1992 User MYNAME creates MYMENU.C, version 1.0
  290. Sun Dec 13 21:56:37 1992 User MYNAME creates MYFILE.C, version 1.0
  291. Sun Dec 13 21:56:38 1992 User MYNAME creates MYPRINT.C, version 1.0
  292. Sun Dec 13 21:56:39 1992 User MYNAME creates MYAPP.H, version 1.0
  293. Sun Dec 13 21:56:40 1992 User MYNAME creates MYFILE.H, version 1.0
  294. Sun Dec 13 21:56:41 1992 User MYNAME creates MYAPP.MAK, version 1.0
  295. Sun Dec 13 21:56:42 1992 User MYNAME creates MYAPP.DOC, version 1.0
  296.  
  297. Now you decide that you  want to make some enhancements to the module
  298. MYFILE.C. To make things easier, you can now set the environment var-
  299. iable PROJECT to MYAPP by using the command
  300.  
  301. SET PROJECT=MYAPP.
  302.  
  303. This allows you to omit the project name on the command lines of AVTS
  304. commands.
  305.  
  306. Issue the following command to check MYFILE.C out:
  307.  
  308. get MYFILE.C
  309.  
  310. This  command  copies  the actual version of MYFILE.C to your current
  311. directory  and  locks  this  module for other users. You may now edit 
  312. this  module  to  apply the changes you have in mind without worrying 
  313. about others that might change it while you work on it.
  314.  
  315. For  reference  you  might need the file MYAPP.H also, but you do not 
  316. want  to  have it locked, so that another user is able to change this 
  317. module. To achieve that, issue the command:
  318.  
  319. read MYAPP.H
  320.  
  321. This also copies the actual version of this file to your current dir-
  322. ectory, but leaves the module unlocked. You may also use this command
  323. if this module is locked by another user.
  324. After you have made all required changes to MYFILE.C you have to tell
  325. AVTS  that you have made some changes to that module. This is done by 
  326. the command
  327.  
  328. delta MYFILE.C
  329.  
  330. After  issuing  this command you will be asked to enter a comment for
  331. your changes. You may type a character string of up to 126 characters
  332. long. 
  333.  
  334. What if you made up your mind and decided not to change anything in a
  335. module  you  had  checked out using the 'get' command? You may simply 
  336. remove the lock flag from the module by issuing the command
  337.  
  338. unget MYFILE.C
  339.  
  340. This  removes the lock flag of module MYFILE.C and makes it available 
  341. for other users.
  342.  
  343.  
  344. 2.    Configuration management
  345.  
  346. You have now learned the basic tasks for managing a project with AVTS.
  347. You  can  introduce new files to a project, get files for editing and 
  348. read  them for reference. You also know how to give them back to AVTS 
  349. to keep track of versions.
  350. There is more to AVTS. It also allows you to keep track of your confi-
  351. guration.
  352. In  a certain project state you will decide that the current state is 
  353. your  "Beta Version 1.0".  You  may  now give the current versions of 
  354. your  modules  an alias name, that allows you to retrieve all modules 
  355. belonging  to  this  project state easily even if you have done major 
  356. changes to your modules.
  357.  
  358. For  this  purpose  you  have to use the command "SETALIAS". An alias
  359. name can be up to 79 characters in length. For our sample project you
  360. would have to enter the following command:
  361.  
  362. setalias "-aBeta Version 1.0" -pMYAPP all
  363.  
  364. This  marks  the current versions of all modules in the project MYAPP
  365. with the alias name "Beta Version 1.0".
  366. If  you  have  already tagged one or more modules with the same alias 
  367. name  you  will get a warning and nothing will happen to them. If the 
  368. current  version  of a module already has another alias name you will 
  369. also  get  a  warning message and that alias name will be overwritten 
  370. with the new one you specified on the command line.
  371.  
  372.  
  373.  
  374. If  you  want  to  remove  an alias name from a specific version of a
  375. module you can use this command:
  376.  
  377. rmalias -aaliasname module
  378.  
  379.  
  380. If  you  want  to retrieve a configuration with a specific alias name 
  381. simply issue the following command:
  382.  
  383. read "-aBeta Version 1.0" -pMYAPP all
  384.  
  385. This command reads all modules tagged with the alias name:
  386.  
  387. "Beta Version 1.0" 
  388.  
  389. and  copies them to your  current working directory. Please note that
  390. the quotation marks are necessary if your alias name contains blanks.
  391.  
  392. This  mechanism provides an easy method to mark and retrieve specific 
  393. project  states  at every time. That way you can build up version 1.0 
  394. of an application that is currently at version 15.99 without thinking
  395. about what modules belong to it.
  396.  
  397.  
  398.  
  399. 3.    Module history and editing activity
  400.  
  401. A  major  point of interest is  which user has done which changes and
  402. when.  Some  information can be obtained by reading the project's log 
  403. file.  But  if  you  need  the  specific  history of a module and the 
  404. comments  a user entered for each delta you will have to use the com-
  405. mand 'HISTORY'.
  406.  
  407. The  following  command  retrieves all information known of a certain 
  408. module and prints it to the screen. You can easily re-direct the out-
  409. put  of  this  command to a file or a printer. Have a look at the ex-
  410. amples for the command 'HISTORY' in chapter III. REFERENCE.
  411.  
  412. A simple example for this command is:
  413.  
  414. history MYFILE.C
  415.  
  416. This  command  prints  out  a editing history for the module MYFILE.C
  417. from its initial creation up to the current version.
  418.  
  419. While  reviewing  the  comments  you  made for specific versions of a
  420. module  you  may  think  that the comment you typed in when the delta 
  421. command  asked  for  it, doesn't really match what you wanted to say. 
  422. Therefore  we supplied an extra command that allows you to change the 
  423. comment  for  a  specific version of a module. Though, if you want to 
  424. change the comment for i.e. version 2.9 of module MYAPP.C you may use
  425. the following command:
  426.  
  427. cdc -v2.9 -pMYAPP MYFILE.C
  428.  
  429. Note  that  if  you  omit  the  version parameter you will change the 
  430. comment  of  the  current  version.  The  project  name specification 
  431. (-pMYAPP)  may  be  omitted  if you have set the environment variable 
  432. PROJECT correctly.
  433.  
  434. Another  task, mainly performed by project administrators, will be to
  435. have  a look at the current activity on a project. The command 'SACT' 
  436. (System  activity  report)  lists  all modules in a project and their 
  437. current  state. If a file is currently checked out, it also notes who 
  438. owns  it  and at what time he checked it out. Please refer to chapter 
  439. III. for more information about this command.
  440.  
  441.  
  442.  
  443. III.    Reference
  444.  
  445. 1.    CDC - Change Delta Comment
  446.  
  447. Synopsis
  448.  
  449.     cdc [-uusername] [-vx.y] [-pproject] file [...]
  450.  
  451. Description
  452.  
  453.     The  command  cdc  allows changing of the comment given to a
  454.     specific version of  a file in an AVTS project. The optional
  455.     parameters username and project can be omitted if the corres-
  456.     ponding environment variables  USERNAME  and PROJECT are set
  457.     correctly.  You may specify more than one file and each file 
  458.     specifier may contain wildcard characters.
  459.  
  460. Options
  461.  
  462.     -uusername    Specifies the name of the user. This option 
  463.             can be omitted if the environment variable 
  464.             USERNAME is set. However, specifying a user's
  465.             name with the -u flag overrides the contents
  466.             of the environment variable.
  467.  
  468.     -vx.y        This flag specifies the version of the delta
  469.             for which you want to change the comment. If
  470.             omitted the actual version is used.
  471.  
  472.     -pproject    Specifies the name of the project. This 
  473.             option can be omitted if the environment 
  474.             variable PROJECT is set. However, specifying 
  475.             a project's name with the -p flag overrides 
  476.             the contents of the environment variable.
  477.  
  478. Examples
  479.  
  480.     1.    To change the delta comment of the current version of
  481.         file MYAPP.C in the project MYAPP:
  482.  
  483.         cdc MYAPP MYAPP.C
  484.  
  485.         This shows you the current contents of the comment 
  486.         and prompts you for the new comment in the following
  487.         form:
  488.  
  489.         ARIS Version Tracking System 1.2
  490.         (c) 1992,1993 All rights reserved
  491.         File MYAPP.C, created Sun Dec 13 21:56:35 1992
  492.         Version 1.2, derived from version 1.1
  493.         Comment: Debugging in progress...
  494.         New comment:
  495.  
  496.     2.    To change the comment of a specific version of 
  497.         MYAPP.C:
  498.  
  499.         cdc -v1.2 MYAPP MYAPP.C
  500.  
  501.  
  502. 2.    CREATE - Creates projects and apply files to them.
  503.  
  504. Synopsis
  505.  
  506.     create [-uuser] [-ttype] [-pproject] file [...]
  507.  
  508. Description
  509.  
  510.     The  command  create  allows creation of a new project and/or
  511.     adding files to a project. If there is no file specified with
  512.     the  -f  flag  the  project is created. However, if you add a 
  513.     file  with the -f flag to a non-existant project, the project 
  514.     is created automatically. The parameter -uuser can be omitted
  515.     if  the  environment  variable USERNAME is set correctly. You 
  516.     may  specify  more  than one file and each file specifier may 
  517.     contain wildcard characters.
  518.  
  519.  
  520. Options
  521.  
  522.     -uuser        Specifies the name of the user. This option 
  523.             can be omitted if the environment variable 
  524.             USERNAME is set. However, specifying a user's
  525.             name with the -u flag overrides the contents 
  526.             of the environment variable.
  527.  
  528.     -ttype        Specifies the type of a new file. Legal 
  529.             values are 0 (null) for ASCII files and 1 
  530.             (one) for binary files. If this option is 
  531.             omitted the default value 0 (null) will be 
  532.             used.
  533.  
  534.     -pproject    Specifies the name of the project. 
  535.             This option can be omitted if the 
  536.             environment variable PROJECT is 
  537.             set. However, specifying a project's 
  538.             name with the -p flag overrides the 
  539.             contents of the environment vari-
  540.             able.
  541.  
  542.  
  543. Examples:
  544.  
  545.     1.    To create a new project NEWPRO:
  546.  
  547.         create -pNEWPRO
  548.  
  549.     2.    To add the source file MYAPP.C to the project NEWPRO:
  550.  
  551.         create -pNEWPRO MYAPP.C
  552.  
  553.     3.    To add the binary file MYAPP.DBF to the project 
  554.         NEWPRO
  555.  
  556.         create -t1 -pNEWPRO MYAPP.DBF
  557.  
  558.  
  559. 3.    DELTA - Creates a new version (delta) of a file in an AVTS 
  560.         project.
  561.  
  562. Synopsis
  563.  
  564.     delta [-uusername] [-f] [-pproject] file [...]
  565.  
  566. Description
  567.  
  568.     The  delta  command  creates a  new version of file. The file
  569.     must  have  been checked out with the command get by the same 
  570.     user. Otherwise you will get an error message that either the
  571.     file  has not been checked out or has been checked out by an-
  572.     other user. See appendix A for a list of error messages.
  573.     You  will be prompted for a comment on the changes. The maxi-
  574.     mum  length  of the comment string is 127 characters. You may 
  575.     specify  more  than one file and each file specifier may con-
  576.     tain wildcard characters.
  577.  
  578.  
  579. Options
  580.  
  581.     -uusername    Specifies the name of the user. This 
  582.             option can be omitted if the envi-
  583.             ronment variable USERNAME is 
  584.             set. However, specifying a user's 
  585.             name with the -u flag overrides the 
  586.             contents of the environment vari-
  587.             able.
  588.  
  589.     -f        This flag forces a new version of all 
  590.             specified files into an AVTS project 
  591.             even if those files have not been 
  592.             checked out. This flag does not al-
  593.             low to create a new version of a file 
  594.             that is currently checked out by an-
  595.             other user.
  596.  
  597.     -pproject    Specifies the name of the project. 
  598.             This option can be omitted if the 
  599.             environment variable PROJECT is 
  600.             set. However, specifying a project's 
  601.             name with the -p flag overrides the 
  602.             contents of the environment vari-
  603.             able.
  604.  
  605. Example
  606.  
  607.     To create a new version of MYAPP.C in the project MYAPP:
  608.     
  609.     delta -pMYAPP MYAPP.C
  610.     
  611.  
  612. 4.    DIFF - Compares two files and creates a difference listing
  613.  
  614. Synopsis
  615.  
  616.     diff [-s] [-mnum] oldfile newfile
  617.  
  618. Description
  619.  
  620.     The  command  diff  is  a  program  that is used by the delta
  621.     command  to create a difference listing when a new version of 
  622.     an  ASCII file is applied to a project. You may however, also 
  623.     use  this  command to create difference listings for your own 
  624.     use.
  625.     From  the output of the diff command you can see what changes 
  626.     must  be  made  in oldfile to get newfile. The output has the 
  627.     following form:
  628.     
  629.     n1,n2d        delete lines n1 to n2 from file oldfile.
  630.     
  631.     n1,n2cm1,m2    Replace the lines n1 to n2 in file oldfile by 
  632.             the lines m1 to m2 from file newfile.
  633.     
  634.     n1am1,m2    Insert lines m1 to m2 from file newfile in 
  635.             file oldfile after line n1.
  636.     
  637.  
  638. Options
  639.  
  640.     -s    Creates a script which can be used to convert oldfile 
  641.         to newfile.
  642.  
  643.     -mnum    num specifies how many subsequent lines have to be 
  644.         equal to synchronise.
  645.  
  646.  
  647. 5.    GET - Copies a project file and locks it
  648.  
  649. Synopsis
  650.  
  651.     get [-uusername] [-pproject] file [...]
  652.  
  653. Description
  654.  
  655.     The  command  get copies a file from a project to the current
  656.     working  directory and locks it in the project. Therefore an-
  657.     other  user  cannot "get" this file until it is checked in by
  658.     the command delta or the lock is removed by the command unget.
  659.     Other users may obtain a copy of a locked module by using the
  660.     command  read.  The  optional parameters username and project
  661.     name   can   be  omitted  if  the  corresponding  environment
  662.     variables  USERNAME  and  PROJECT  are set correctly. You may 
  663.     specify  more  than  one  file  and  each  file specifier may 
  664.     contain wildcard characters.
  665.  
  666.  
  667. Options
  668.  
  669.     -uusername    Specifies the name of the user. This 
  670.             option can be omitted if the envi-
  671.             ronment variable USERNAME is 
  672.             set. However, specifying a user's 
  673.             name with the -u flag overrides the 
  674.             contents of the environment vari-
  675.             able.
  676.  
  677.  
  678.     -pproject    Specifies the name of the project. 
  679.             This option can be omitted if the 
  680.             environment variable PROJECT is 
  681.             set. However, specifying a project's 
  682.             name with the -p flag overrides the 
  683.             contents of the environment vari-
  684.             able.
  685.  
  686.  
  687. 6.    HISTORY - Prints the revision history of a file in an AVTS 
  688.           project
  689.  
  690. Synopsis
  691.  
  692.     history [-uusername] [-vx.y] [-pproject] file [...]
  693.  
  694. Description
  695.  
  696.     The command history prints out all activities that occured on
  697.     file  from the initial creation to the current version or, if 
  698.     supplied, to the version specified with the -v parameter. The
  699.     optional  parameters  username and projectname can be omitted 
  700.     if the corresponding environment variables USER    NAME and PRO-
  701.     JECT  are  set  correctly. You may specify more than one file 
  702.     and each file specifier may contain wildcard characters.
  703.  
  704.  
  705. Options
  706.  
  707.     -uusername    Specifies the name of the user. This 
  708.             option can be omitted if the envi-
  709.             ronment variable USERNAME is 
  710.             set. However, specifying a user's 
  711.             name with the -u flag overrides the 
  712.             contents of the environment vari-
  713.             able.
  714.     
  715.     -vx.y        This flag specifies the version of the 
  716.             module where the printout of the 
  717.             history should stop. If omitted the 
  718.             actual version is used.
  719.  
  720.     -pproject    Specifies the name of the project. 
  721.             This option can be omitted if the 
  722.             environment variable PROJECT is 
  723.             set. However, specifying a project's 
  724.             name with the -p flag overrides the 
  725.             contents of the environment vari-
  726.             able.
  727.  
  728. Examples
  729.  
  730.     1.    List the revision history of MYAPP.C in project MYAPP:
  731.     
  732.         history -pMYAPP MYAPP.C
  733.     
  734.     2.    View the revision history of MYAPP.C page by page:
  735.     
  736.         history -pMYAPP MYAPP.C | more
  737.     
  738.     3.    Print the history of MYAPP.C up to version 2.5 on a
  739.         parallel printer:
  740.     
  741.         history -v2.5 -pMYAPP MYAPP.C >prn
  742.     
  743.  
  744. 7.    LOGVIEW - View the contents of a project's logfile
  745.  
  746. Synopsis
  747.  
  748.     logview project
  749.  
  750. Description
  751.  
  752.     The  utility logview allows you to easily browse through the 
  753.     log file of the specified project. The parameter project can
  754.     be omitted if the environment variable PROJECT is set to the
  755.     correct value.
  756.  
  757.  
  758. 8.    READ - Copies a project file without locking
  759.  
  760. Synopsis
  761.  
  762.     read [-i] [-uuser] [[-vx.y]|[-aalias]] [-pproject] file [...]
  763.  
  764. Description
  765.  
  766.     The command read copies the specified file(s) from project to
  767.     the  current  working  directory. The retrieved module is not 
  768.     locked  and therefore still available for other users. If you 
  769.     specify  'all' instead of a file's name all files in the pro-
  770.     ject are copied. If no version is specified with the -v flag,
  771.     the current version is used. The optional parameters user and 
  772.     project  can  be  omitted  if  the  corresponding environment 
  773.     variables  USERNAME  and  PROJECT  are set correctly. You may 
  774.     specify  more  than  one  file  and  each  file specifier may 
  775.     contain  wildcard  characters.  Each occurance of a macro ex-
  776.     pression is replaced by its corresponding value unless the -i 
  777.     flag is used.
  778.  
  779. Options
  780.  
  781.     -i        Ignore macros.
  782.  
  783.     -uuser        Specifies the name of the user. This 
  784.             option can be omitted if the envi-
  785.             ronment variable USERNAME is 
  786.             set. However, specifying a user's 
  787.             name with the -u flag overrides the 
  788.             contents of the environment vari-
  789.             able.
  790.  
  791.     -vx.y        This flag specifies the version of the 
  792.             module which should be retrieved. 
  793.             If omitted the actual version is 
  794.             used. This option is not allowed in 
  795.             combination with the -a flag.
  796.  
  797.     -aalias        This copies the version that has the 
  798.             given alias name. If there is no such 
  799.             version you will get an error mes-
  800.             sage.
  801.  
  802.     -pproject    Specifies the name of the project. 
  803.             This option can be omitted if the 
  804.             environment variable PROJECT is 
  805.             set. However, specifying a project's 
  806.             name with the -p flag overrides the 
  807.             contents of the environment vari-
  808.             able.
  809.  
  810.  
  811.  
  812. Macros
  813.  
  814.     Each  of  the following  macro expressions is replaced by its
  815.     corresponding value.
  816.  
  817.     Macro    Replaced by
  818.     ==============================================
  819.     %M%    Module name
  820.     %I%    %R%.%L%
  821.     %R%    Release
  822.     %L%    Level
  823.     %D%    Current date (YY/MM/DD)
  824.     %H%    Current date (MM/DD/YY)
  825.     %T%    Current time (HH:MM:SS)
  826.     %E%    Date of extracted delta (YY/MM/DD)
  827.     %G%    Date of extracted delta (MM/DD/YY)
  828.     %U%    Time of extracted delta (HH:MM:SS)
  829.     %Y%    Module type
  830.     %F%    AVTS file name
  831.     %P%    Full path name of project
  832.     %C%    Current line number
  833.     %Z%    4 character string @(#) recognized by 
  834.         the what command
  835.     %W%    %Z%%M% (tab)%I%
  836.     %A%    %Z%%Y% %M% %I%%Z%
  837.  
  838.  
  839. Examples
  840.  
  841.     1.    Read the file MYFILE.C from project MYAPP:
  842.  
  843.         read -pMYAPP MYFILE.C
  844.  
  845.     2.    Read version 1.5 of MYFILE.C from project MYAPP:
  846.  
  847.         read -v1.5 -pMYAPP MYFILE.C
  848.  
  849.     3.    Read all file from project MYAPP that belong to 
  850.         "Beta Version 1.0":
  851.  
  852.         read "-aBeta Version 1.0" -pMYAPP all
  853.  
  854.     Please note that the quotation marks are necessary because 
  855.     the alias name contains space characters.
  856.  
  857.  
  858.  
  859. 9.    RMALIAS - Removes an alias name from a specific version of a
  860.           module
  861.  
  862. Synopsis
  863.  
  864.     rmalias [-uusername] -aalias [-pproject] file [...]
  865.  
  866. Description
  867.  
  868.     The  command  rmalias  removes  an alias name from the module
  869.     specified  by  file. If 'all' is specified instead of a file-
  870.     name,  the  alias  name  is  removed  from all modules in the 
  871.     specified  project. The optional parameters username and pro-
  872.     ject   can   be  omitted  if  the  corresponding  environment 
  873.     variables USERNAME and PROJECT are set correctly. 
  874.     You  may  specify  more than one file and each file specifier
  875.     may contain wildcard characters.
  876.  
  877.  
  878. Options
  879.  
  880.     -uusername    Specifies the name of the user. This 
  881.             option can be omitted if the envi-
  882.             ronment variable USERNAME is 
  883.             set. However, specifying a user's 
  884.             name with the -u flag overrides the 
  885.             contents of the environment vari-
  886.             able.
  887.  
  888.     -aalias        This specifies the alias name that 
  889.             should be removed. If there is no 
  890.             such alias you will get an error 
  891.             message.
  892.  
  893.     -pproject    Specifies the name of the project. 
  894.             This option can be omitted if the 
  895.             environment variable PROJECT is 
  896.             set. However, specifying a project's 
  897.             name with the -p flag overrides the 
  898.             contents of the environment vari-
  899.             able.
  900.  
  901. Examples
  902.  
  903.     1.    Remove the alias "BETA" from module MYFILE.C in 
  904.         project MYAPP:
  905.     
  906.         rmalias -aBETA -pMYAPP MYFILE.C
  907.     
  908.     2.    Remove the alias "BETA" from all files in project 
  909.         MYAPP:
  910.     
  911.         rmalias -aBETA -pMYAPP all
  912.  
  913.  
  914. 10.    RMAVTS - Deletes a file from an AVTS project
  915.  
  916. Synopsis
  917.  
  918.     rmavts [-uusername] [-pproject] file [...]
  919.  
  920. Description
  921.  
  922.     The  command rmavts deletes all specified files from the pro-
  923.     ject  either  specified  with  the  -p  flag  or  the project 
  924.     specified  by  the environment variable PROJECT. The optional 
  925.     parameter username may be omitted if the environment variable
  926.     USER is set correctly. Please note that rmavts does not allow
  927.     deleting  a file which is currently checked out. There may be 
  928.     one  or  more file specifiers on the command line, where each 
  929.     allows usage of wildcard characters.
  930.  
  931. Options
  932.  
  933.     -uusername    Specifies the name of the user. This 
  934.             option can be omitted if the envi-
  935.             ronment variable USERNAME is 
  936.             set. However, specifying a user's 
  937.             name with the -u flag overrides the 
  938.             contents of the environment vari-
  939.             able.
  940.  
  941.  
  942.  
  943.     -pproject    Specifies the name of the project. 
  944.             This option can be omitted if the 
  945.             environment variable PROJECT is 
  946.             set. However, specifying a project's 
  947.             name with the -p flag overrides the 
  948.             contents of the environment vari-
  949.             able.
  950.  
  951.  
  952. 11.    SACT - Reports current editing activity in an AVTS project
  953.  
  954. Synopsis
  955.  
  956.     sact [-uusername] [-l] project
  957.  
  958. Description
  959.  
  960.     The command sact  prints out for each file in project whether
  961.     it  is currently checked out and by whom or not. The optional 
  962.     parameter  username  can  be omitted if the corresponding en-
  963.     vironment variable USERNAME is set correctly.
  964.  
  965. Options
  966.  
  967.     -uusername    Specifies the name of the user. This 
  968.             option can be omitted if the envi-
  969.             ronment variable USERNAME is 
  970.             set. However, specifying a user's 
  971.             name with the -u flag overrides the 
  972.             contents of the environment vari-
  973.             able.
  974.     
  975.     -l        If specified, sact will only display 
  976.             those files, that are currently locked 
  977.             in the project. Unlocked files will 
  978.             not appear in the list.
  979.  
  980.  
  981. 12.    SETALIAS - Sets the alias name for one or more modules
  982.  
  983. Synopsis
  984.  
  985.     setalias [-uuser] [-vx.y] -aalias [-pproject] file [...]
  986.  
  987. Description
  988.  
  989.     The  command  setalias  sets  an alias name for the specified
  990.     file.  If  'all' is given instead of a filename, all files in 
  991.     the  specified  project will get this alias name. If there is 
  992.     no version specified with the -v flag, the current version of
  993.     file will be used. If you have already tagged another version
  994.     of  the  specified  module  with the same alias name you will 
  995.     get  a warning and nothing will happen. If the specified ver-
  996.     sion of a module has already another alias name you will also
  997.     get  a warning message and the alias name will be overwritten 
  998.     with the new one you specified with the -a flag. The optional
  999.     parameters user and project can be omitted if the correspond-
  1000.     ing  environment  variables  USERNAME  and  PROJECT  are  set 
  1001.     correctly.  You  may specify more than one file and each file 
  1002.     specifier may contain wildcard characters.
  1003.  
  1004. Options
  1005.  
  1006.     -uuser        Specifies the name of the user. This 
  1007.             option can be omitted if the envi-
  1008.             ronment variable USERNAME is 
  1009.             set. However, specifying a user's 
  1010.             name with the -u flag overrides the 
  1011.             contents of the environment vari-
  1012.             able.
  1013.  
  1014.     -vx.y        Specifies the version of the module 
  1015.             which should get an alias name.
  1016.     
  1017.     -aalias        Specifies the alias name which 
  1018.             should be used for the file. Maxi-
  1019.             mum length is 78 characters.
  1020.     
  1021.     -pproject    Specifies the name of the project. 
  1022.             This option can be omitted if the 
  1023.             environment variable PROJECT is 
  1024.             set. However, specifying a project's 
  1025.             name with the -p flag overrides the 
  1026.             contents of the environment vari-
  1027.             able.
  1028.  
  1029. Example
  1030.  
  1031.     Tag the current versions of all file in project MYAPP with 
  1032.     the alias name "BETA":
  1033.     
  1034.     setalias -aBETA -pMYAPP all
  1035.  
  1036.  
  1037. 13.    UNDIFF - Applies a diff script to a file
  1038.  
  1039. Synopsis
  1040.  
  1041.     undiff oldfile newfile diffscript
  1042.  
  1043. Description
  1044.  
  1045.     The  command  undiff  uses a script  generated by the command
  1046.     diff  to  convert  one  file  to  another. Note that the diff 
  1047.     script  must  have  been produced by using the switch -s (See 
  1048.     DIFF on page 22 for further details).
  1049.     This  command  is  not  used by any other AVTS command. It is 
  1050.     just  added for your convenience, to enable usage of the diff 
  1051.     command for other purposes beside version tracking as well.
  1052.  
  1053.  
  1054. 14.    UNGET - Reverses a GET command without creating a new version
  1055.  
  1056. Synopsis
  1057.  
  1058.     unget [-uusername] [-pproject] file [...]
  1059.  
  1060. Description
  1061.  
  1062.     The  command  unget unlocks a file previously locked with the
  1063.     get  command.  Any changes on a file are ignored and the ver-
  1064.     sion  counter is not increased. The optional parameters user-
  1065.     name  and  project  can be omitted if the corresponding envi-
  1066.     ronment variables USERNAME and PROJECT are set correctly. You
  1067.     may  specify  more  than one file and each file specifier may 
  1068.     contain wildcard characters.
  1069.  
  1070.  
  1071. Options
  1072.  
  1073.     -uusername    Specifies the name of the user. This 
  1074.             option can be omitted if the envi-
  1075.             ronment variable USERNAME is 
  1076.             set. However, specifying a user's 
  1077.             name with the -u flag overrides the 
  1078.             contents of the environment vari-
  1079.             able.
  1080.     
  1081.     -pproject    Specifies the name of the project. 
  1082.             This option can be omitted if the 
  1083.             environment variable PROJECT is 
  1084.             set. However, specifying a project's 
  1085.             name with the -p flag overrides the 
  1086.             contents of the environment vari-
  1087.             able.
  1088.  
  1089.  
  1090. 15.    WHAT - Extracts identifying strings from program files
  1091.  
  1092. Synopsis
  1093.     
  1094.     what [-s] file ...
  1095.  
  1096. Description
  1097.  
  1098.     The what command searches the named files for all occurrences
  1099.     of  the  pattern  that read substitutes for the %Z% keyletter 
  1100.     (See  "Macros"  on page 32). By convention, the value substi-
  1101.     tuted is @(#). 
  1102.     what  writes  to standard output whatever follows the pattern 
  1103.     up  to but not including the first double quotation mark ("), 
  1104.     greater  than  symbol (>), new-line character, backslash (\), 
  1105.     or null character.
  1106.     
  1107.     The  what command is intended for use in conjunction with the 
  1108.     read command, which automatically inserts the identifying in-
  1109.     formation,  provided  that  the  %Z% keyletter is used in the 
  1110.     file.  You  can  also  use the what on files where the infor-
  1111.     mation is inserted manually.
  1112.  
  1113. Flags
  1114.  
  1115.     -s    Searches only the first occurrence of @(#).
  1116.   
  1117.  
  1118.  
  1119. Examples
  1120.  
  1121.     Suppose that the file test.c contains a C program 
  1122.     that includes the line:
  1123.     
  1124.     char ident[] = "@(#)Test Program";
  1125.     
  1126.     If you compile test.c to produce test.obj and 
  1127.     test.exe, the command:
  1128.     
  1129.     what test.c test.obj test.exe
  1130.     
  1131.     displays:
  1132.     
  1133.     test.c:
  1134.         Test Program
  1135.     test.obj:
  1136.         Test Program
  1137.     test.exe:
  1138.         Test program
  1139.         
  1140.  
  1141.  
  1142. IV.    APPENDIX A - ERROR MESSAGES
  1143.  
  1144.     Delta was created by another user, access denied
  1145.     
  1146.     You  tried  to change the delta comment of a version that was
  1147.     created  by  another  user. Use the history command to obtain 
  1148.     information  about  this  module  and  contact  the  user who 
  1149.     created this module.
  1150.     
  1151.     File filename already in project projectname
  1152.     
  1153.     You  tried  to introduce a file to a  project that is already
  1154.     in that project with the create command.
  1155.      
  1156.     File name already in use
  1157.     
  1158.     You tried to do an action on a file that is currently checked
  1159.     out.  For  further information use the command sact that pro-
  1160.     vides useage information for each file in a project.
  1161.     
  1162.     File name already in use by user username
  1163.     
  1164.     The specified  file is currently checked out by another user.
  1165.     You cannot complete the desired action until this user checks
  1166.     the file in again.
  1167.     
  1168.     File name checked out by username, access denied
  1169.     
  1170.     You  tried  to  modify  the  information  of  a  file that is
  1171.     currently checked out by another user.
  1172.     
  1173.     File name is not checked out
  1174.     
  1175.     You tried to create a delta on a file that is not checked out.
  1176.     If  you  modified  a  file you obtained with the read command 
  1177.     this error can be overcome by doing the following actions:
  1178.     
  1179.     -    rename the file you want to check in (file.BAK).
  1180.     -    Use the get command to lock the desired file on your 
  1181.         user-id.
  1182.     -    rename the file back to its original name.
  1183.     -    use the delta command.
  1184.     
  1185.     Note  that  it  is recommended  to check the project log file
  1186.     first  if  to ensure that no other user made modifications to 
  1187.     that file in the meantime.
  1188.     
  1189.     File name is not checked out, cannot unget
  1190.     
  1191.     You  tried  to  use  the unget command for a file that is not
  1192.     checked out.
  1193.     
  1194.     File name not in project
  1195.     
  1196.     You specified a file for an AVTS command that is not found in
  1197.     the project specified. Check the environment variable PROJECT
  1198.     and the spelling of the issued command.
  1199.     
  1200.     Internal failure, not found name
  1201.     
  1202.     Please contact ARIS support immediately if this error occurs.
  1203.  
  1204.     Missing argument
  1205.     
  1206.     A  required  argument,  such as file- or projectname have not
  1207.     been specified. Check the typing of the issued command.
  1208.     
  1209.     Missing file name
  1210.     
  1211.     You did not specify a filename where it was required.
  1212.     
  1213.     Missing project name
  1214.     
  1215.     You did not specify a project name where it was required.
  1216.     
  1217.     Project name already exists
  1218.     
  1219.     You  tried  to  create a new project  with the create command
  1220.     that already exists. Use another name.
  1221.     
  1222.     Projects is locked, access denied
  1223.         
  1224.     An  AVTS  command was not able  to lock the project directory
  1225.     file  after  ten attempts. This may be caused by heavy use of 
  1226.     the  system.  Repeat  your  command  and contact your network 
  1227.     administrator if it occurs again.
  1228.     
  1229.     Unable to create name
  1230.     
  1231.     An  AVTS  command  was unable to create the file specified by 
  1232.     name. This might be caused by several reasons:
  1233.     
  1234.     1.    Your disk has no more free space
  1235.     2.    Your disk is write protected
  1236.     3.    The file specified by name already exists 
  1237.         and has a read-only or a system attribute.
  1238.     4.    On a network drive you may have no write 
  1239.         access to the current directory, contact 
  1240.         your system administrator for further in-
  1241.         formation.
  1242.     
  1243.     Unable to create file name
  1244.     
  1245.     See above message for explanation.
  1246.     
  1247.     Unable to open input file name
  1248.     
  1249.     The  file you specified  cannot be opened. This may either be
  1250.     caused  by  a  misspelling or insufficient access rights in a 
  1251.     network environment.
  1252.     
  1253.     Unable to open RCS.DAT
  1254.     
  1255.     If  this happens on a newly created project, you have not yet
  1256.     added  files  to  the project. Therefore no project directory 
  1257.     exists.  If you where able to access the project before, your 
  1258.     disk  may  have been corrupted. Check the file system and use 
  1259.     your backup to restore the project.
  1260.     
  1261.     Username unknown
  1262.     
  1263.     There  is  no  username specified. You must either use the -u
  1264.     command  line  switch or the environment variable USERNAME to
  1265.     specify a name.
  1266.